package com.atguigu.dao.impl;

import com.atguigu.dao.ContainerVolumeMapTypeDao;
import com.atguigu.pojo.ContainerVolumeMapType;

import java.util.List;


public class ContainerVolumeMapTypeDaoImpl extends BaseDao implements ContainerVolumeMapTypeDao {

    @Override
    public int addContainerVolumeMapType(ContainerVolumeMapType containerVolumeMapType) {
        System.out.println("ContainerVolumeMapTypeDaoImpl程序在[" + Thread.currentThread().getName() + "]线程中");
        String sql = "insert into t_containerVolumeMapType(`id`,`name`) values(?,?);";
        return update(sql,containerVolumeMapType.getId(), containerVolumeMapType.getName());
    }

    @Override
    public int deleteContainerVolumeMapTypeById(String id) {
        String sql = "delete from t_containerVolumeMapType where id=?";
        return update(sql, id);
    }

    @Override
    public int updateContainerVolumeMapType(ContainerVolumeMapType containerVolumeMapType) {
        String sql = "update t_containerVolumeMapType set `name`=? where id=?";
        return update(sql, containerVolumeMapType.getName(), containerVolumeMapType.getId());
    }

    @Override
    public ContainerVolumeMapType queryContainerVolumeMapTypeById(String id) {
        String sql = "select `id`,`name` from t_containerVolumeMapType where id=?";
        return queryForOne(ContainerVolumeMapType.class, sql, id);
    }
    @Override
    public ContainerVolumeMapType queryContainerVolumeMapTypeByName(String name) {
        String sql = "select `id`,`name` from t_containerVolumeMapType where name=?";
        return queryForOne(ContainerVolumeMapType.class, sql, name);
    }
    @Override
    public List<ContainerVolumeMapType> queryContainerVolumeMapTypes() {// 查询全部
        String sql = "select `id`,`name` from t_containerVolumeMapType";
        return queryForList(ContainerVolumeMapType.class, sql);
    }

    @Override
    public Integer queryForPageTotalCount() {//查询总条目数,为page分片做准备
        String sql = "select count(*) from t_containerVolumeMapType";
        Number containerVolumeMapTypeCount = (Number) queryForSingleValue(sql);//这个语句似乎可以返回任何类型的查询
        //System.out.println(bookCount);
        return containerVolumeMapTypeCount.intValue();
    }

    @Override
    public List<ContainerVolumeMapType> queryForPageItems(Integer begin, Integer pageSize) {
        String sql = "select `id`,`name` from t_containerVolumeMapType limit ?,?";
        return queryForList(ContainerVolumeMapType.class, sql, begin, pageSize);//查询数据片段
    }
}


